home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1993 / MacHack 1993.toast / MacHack™ 1987-1992 / MacHack™ '90 / Utilities ƒ / MPW Tools ƒ / Simula4.07 / Simula 4.07ƒ / SInterfaces / macDialogMgr.sim < prev    next >
Encoding:
Text File  |  1989-05-01  |  2.9 KB  |  94 lines  |  [TEXT/MPS ]

  1. % ---------------------------------------------------------------------------
  2. %    Class MACDialogMgr
  3. %
  4. % In this module you find the programmers interface to Dialogs and Alerts.
  5. % It is built on top of the TOOLBOX routines in TOOLBOXDialog.
  6. % For a description of the routines see Inside Macintosh, chapter 13.
  7. % MacDialogAlert is only used as prefix on MacDialog and MacAlert
  8. %
  9. % 890317/Boris Magnusson
  10. % 890412/Göran Eriksson
  11. %
  12. % ---------------------------------------------------------------------------
  13. external class MACRect="::SInterfaces:MACRect";
  14. external class MACWindow="::SInterfaces:MACWindow";
  15. external class MACWindowMgr="::SInterfaces:MACWindowMgr";
  16. external class MACEvent="::SInterfaces:MACEvent";
  17. external class MACDialog="::SInterfaces:MACDialog";
  18. external class ToolboxDialog="::SInterfaces:ToolboxDialog";
  19.  
  20. ToolboxDialog class MacDialogMgr(theMacWindowMgr);
  21.     ref(MacWindowMgr) theMacWindowMgr;
  22. begin
  23.     short integer nil=0;
  24.     ref(MACDialog) ActDialog;
  25.     
  26. %    PROCEDURE InitDialogs(resumeProc: ProcPtr);
  27.     PROCEDURE InitDialogs(resumeProc);
  28.         integer resumeProc;
  29.         ToolboxInitDialogs(resumeProc);
  30.  
  31. %    FUNCTION IsDialogEvent(event: EventRecord): BOOLEAN;
  32.     boolean procedure IsDialogEvent(event);
  33.         ref(MACEvent) event;
  34.         IsDialogEvent:=ToolboxIsDialogEvent(event.what);
  35.  
  36. %    FUNCTION DialogSelect(event: EventRecord; VAR theDialog: DialogPtr;
  37. %                    VAR itemHit: INTEGER): BOOLEAN;
  38.     boolean procedure DialogSelect(event,theDialog,itemHit);
  39.                     name theDialog, itemHit;
  40.                     ref(MACEvent) Event;
  41.                     ref(MACDialog) theDialog;
  42.                     short integer itemHit;
  43.         begin
  44.             integer WD;
  45.             short integer LocaIItemHit;
  46.             DialogSelect:=ToolboxDialogSelect(event.what, WD, LocaIItemHit);
  47.             if WD=ActDialog.WindowPtr then
  48.                 theDialog:-ActDialog
  49.             else
  50.             begin
  51.                 theDialog:-none;
  52.                 DialogSelect:=false;
  53.             end;
  54.             itemHit:= LocaIItemHit;
  55.         end;
  56.                     
  57.  
  58. %    PROCEDURE ModalDialog(filterProc: ProcPtr; VAR itemHit: INTEGER);
  59.     PROCEDURE ModalDialog(filterProc, itemHit);
  60.                 name itemHit;
  61.                 integer filterProc;
  62.                 short integer itemHit;
  63.         begin
  64.             short integer LocalItemHit;
  65.             ToolboxModalDialog(filterProc, LocalItemHit);
  66.             itemHit:=LocalItemHit;
  67.         end;
  68.  
  69.  
  70. %    PROCEDURE CloseDialog(theDialog: DialogPtr);
  71.     PROCEDURE CloseDialog(theDialog);
  72.         ref(MACDialog) theDialog;
  73.                 ToolboxCloseDialog(theDialog.WindowPtr);
  74.  
  75. %    PROCEDURE DisposDialog(theDialog: DialogPtr);
  76.     PROCEDURE DisposDialog(theDialog);
  77.                 ref(MACDialog) theDialog;
  78.                 ToolboxDisposDialog(theDialog.WindowPtr);
  79.  
  80. %    PROCEDURE ParamText(cite0, cite1, cite2, cite3: Str255);
  81.     PROCEDURE ParamText(cite0, cite1, cite2, cite3);
  82.                 text cite0, cite1, cite2, cite3;
  83.                 ToolboxParamText(cite0, cite1, cite2, cite3);
  84.  
  85. %    PROCEDURE ErrorSound(sound: ProcPtr);
  86.     PROCEDURE ErrorSound(sound);
  87.         integer sound;
  88.         ToolboxErrorSound(sound);
  89. % -----------------------------------------
  90.     procedure RegisterDialog(D); ref(MacDialog) D;
  91.         theMacWindowMgr.RegisterWindow(D);
  92. % ------------------------------------------
  93.  
  94. end;